home *** CD-ROM | disk | FTP | other *** search
/ Graphics Plus / Graphics Plus.iso / general / viewers / polyview / polyvw31.lha / Polyview3.1 / new / README < prev    next >
Text File  |  1993-08-25  |  29KB  |  728 lines

  1. ------------------------------------------------------------------------------
  2.  
  3. NCSA Polyview 3.1 Release Notes
  4.  
  5. Gilles Bourhis
  6. Software Development Group
  7. National Center for Supercomputing Applications
  8. University of Illinois at Urbana-Champaign
  9. 605 E. Springfield Avenue
  10. Champaign, IL  61820
  11. gbourhis@ncsa.uiuc.edu
  12.  
  13. $Date: 93/08/25 11:13:39 $
  14.  
  15. ------------------------------------------------------------------------------
  16.  
  17. INTRODUCTION
  18. ============
  19.  
  20. This is the official release of NCSA Polyview 3.1.
  21.  
  22. What is Polyview 3.1?
  23.  
  24. o Polyview 3.1 is a software tool for interactive visualization and
  25. analysis of 3D geometrical structures.  Polyview 3.1 reads data files
  26. in NCSA HDF Vset format and automatically derives animation sequences
  27. based on available information.  Script-based and graphical user
  28. interfaces complement each other in a seamless fashion to allow the
  29. easy creation of movie-style animations.  Polyview 3.1 also supports
  30. ``What You See Is What I See''-style collaborative work among
  31. geographically remote Polyview users over a wide-area network.
  32.  
  33. o Polyview 3.1 will run on any Silicon Graphics workstation running
  34. IRIX 4.0.1 or later.  It uses OSF/Motif for its user interface and
  35. IRIS GL for its advanced 3D rendering capabilities.
  36.  
  37. o Polyview 3.1 is a minor upgrade to Polyview 3.0. It provides some bug
  38. fixes like correct picking vertices and correct viewing parameters in
  39. the RenderMan output facility. There are also some improvements (upgrade
  40. to HDF 3.2, easier DTM connection) and some new features like save in
  41. rgb format (SGI image format).
  42. Polyview 3.0 was a major upgrade to NCSA Polyview 2.0 and was designed
  43. by Marc Andreessen.  It provides an entirely new and improved user
  44. interface, many new features, and lots of bug fixes.  However, those of
  45. you who have used Polyview 2.0 should feel right at home: the basic
  46. layout of the program is the same, mouse actions are the same, scripts
  47. should be backwards compatible, data handling is largely the same, and
  48. so on.
  49. Polyview 2.0 was designed by Brian Calvert.
  50.  
  51. ------------------------------------------------------------------------------
  52.  
  53. HOW TO DOWNLOAD POLYVIEW 3.1
  54. ============================
  55.  
  56. To download Polyview 3.1, follow these steps, starting at a Unix
  57. prompt:
  58.  
  59.   (1) % ftp ftp.ncsa.uiuc.edu
  60.   (2) Enter username 'anonymous' (without the quotes).
  61.   (3) Enter password 'yourname@yourmachine' (without the quotes).
  62.   (4) ftp> cd /SGI/Polyview3.1
  63.   (5) ftp> binary
  64.   (6) ftp> get polyview.Z
  65.   (7) ftp> quit
  66.   (8) % uncompress polyview.Z
  67.   (9) % chmod 755 polyview
  68.  
  69. ------------------------------------------------------------------------------
  70.  
  71. DOCUMENTATION AND DEMONSTRATION FILES
  72. =====================================
  73.  
  74. These release notes document the differences between Polyview 2.0 and
  75. 3.1 and explain how to use the new features provided in Polyview 3.1.
  76.  
  77. If you are unfamiliar with Polyview, you should first read the
  78. Polyview 2.0 documentation (anonymous FTP to ftp.ncsa.uiuc.edu in
  79. /UNIX/PolyView/PolyView2.0/docs) and then read this file.
  80.  
  81. Demo scripts and datasets are available via anonymous ftp to
  82. ftp.ncsa.uiuc.edu in /SGI/Polyview3.1/examples.  Files with the
  83. extension '.script' are Polyview scripts; files with the extension
  84. '.hdf' are HDF Vset files.  You will need both sets of files to run
  85. the Polyview demos.  (Be sure to download the HDF files in binary mode
  86. by typing 'binary' at the ftp prompt.)
  87.  
  88. For a basic introduction to Polyview 3.1, download 'coil.script' and
  89. 'coil.hdf' and then start Polyview with the command 'polyview -i
  90. coil.script'.
  91.  
  92. After you have watched the animation sequence in 'coil.script', you
  93. can experiment with the user interface, examine the script and its
  94. commands, and run the other sample scripts.
  95.  
  96. ------------------------------------------------------------------------------
  97.  
  98. QUESTIONS OR PROBLEMS
  99. =====================
  100.  
  101. If you have questions or problems with this release, please contact
  102. polyview@ncsa.uiuc.edu; we'd love to hear about them.  
  103.  
  104. However, since Polyview 3.1 is an unfunded project and we have only
  105. limited resources for supporting it, we may not be able to respond to
  106. your questions and problems as quickly or as thoroughly as we would
  107. like.
  108.  
  109. If you would like to help fund maintenance and development of Polyview
  110. (and thus provide us with the resources to definitely handle any
  111. questions or problems you may have), please call Gilles Bourhis at (217) 
  112. 244-0013 or send email to gbourhis@ncsa.uiuc.edu.
  113.  
  114. ------------------------------------------------------------------------------
  115.  
  116. INPUT DATA FORMAT
  117. =================
  118.  
  119. Polyview takes HDF Vset format (now is a subset of HDF3.2 or later).  Vset
  120. is designed specifically for unstructured data where connectivity is
  121. explicit.  This means to render the surface, you must supply connectivity
  122. list as well as the coordinates.
  123.  
  124. Polyview can only handle polygonal data.  Using HDF-UCD library (libucd.a)
  125. to generate HDF Vset format if you have unstructured or structured cell
  126. data.  Polyview 3.1 is compatible with HDF UCD 1.1.  You can find HDF UCD
  127. library and source code in directory SGI/HDF-UCD on this server.
  128.  
  129. ------------------------------------------------------------------------------
  130.  
  131. NEW FEATURES
  132. ============
  133.  
  134. New user interface
  135. ------------------
  136.  
  137. Polyview has a new Motif-based user interface.  This makes interacting
  138. with Polyview more convenient and user-friendly.  New features of the
  139. user interface are detailed below.
  140.  
  141. Main window
  142. ~~~~~~~~~~~
  143.  
  144. The main (status) window now contains a menubar, a command entry area
  145. (which replaces the previous shell-based command line), and a command
  146. history list.
  147.  
  148. As you enter commands into Polyview via the command line or by working
  149. with the various parts of the user interface, they are stored in the
  150. command history list, where they can be 'recalled' with a simple mouse
  151. double-click.
  152.  
  153. The main window's menubar contains the following (new) entries:
  154.  
  155. o File->Load Script: This option pops up a Motif file selection box
  156. from which you can choose a Polyview script file to run.
  157.  
  158. o File->DTM In/Out: See the section on ``Collaborative Polyview''
  159. below.
  160.  
  161. o Options->Audible: Choose this entry if you want to experiment with
  162. an ``audible'' user interface: various actions in Polyview will
  163. generate sound via the sound hardware in the IRIS Indigo or Personal
  164. IRIS 4D/35.  (If you have a different model IRIS, no sound will be
  165. generated.)
  166.  
  167. o Options->Hardware Dither: Choose this entry if you want to disable
  168. hardware dithering in Polyview's GL windows.  We recommend you leave
  169. this option enabled.
  170.  
  171. Polyview window
  172. ~~~~~~~~~~~~~~~
  173.  
  174. The polyview window now contains a menubar, as well as a couple of
  175. additional Motif widgets.
  176.  
  177. o The 'Active' toggle button indicates whether or not this polyview
  178. window is currently active.  Only one polyview window will be active
  179. at any time.  This toggle will accurately reflect the internal state
  180. of Polyview at all times: if you do something in a non-active polyview
  181. window, that window will become active and the toggle will
  182. correspondingly be automatically set.  You can also set the toggle
  183. explicitly to make any polyview window active.
  184.  
  185. o See the section on ``Collaborative Polyview'' below for details on
  186. the 'Blast Image' pushbutton.
  187.  
  188. The polyview window's menubar contains several new features:
  189.  
  190. o File->Load Vset pops up a dialog box from which you can select both
  191. the HDF Vset data file you wish to load into the polyview window as
  192. well as the identities of various data elements in that data file.
  193. For example, instead of entering 'data x-axis coord1' on the command
  194. line (as you may have had to do with Polyview 2.0), you can just type
  195. 'coord1' in the text entry field next to 'X Axis Vdata name' in the
  196. dialog box.
  197.  
  198. (Do *not* press Return/Enter in the dialog box unless you are ready to
  199. load a file, as this will trigger the 'OK' button and cause a sequence
  200. of file-loading commands to be sent to Polyview.)
  201.  
  202. o File->Send Vset: see ``Collaborative Polyview'' below.
  203.  
  204. o File->Save HDF opens a dialog box in which you can name an HDF image
  205. output file.  As in Polyview 2.0, the name will have a numeric value
  206. inserted into it, as with Polyview 2.0; e.g., foo.hdf will become
  207. foo0000.hdf (for the first image), foo0001.hdf (for the second image),
  208. and so on.
  209.  
  210. o File->Save Ray opens a dialog box in which you can name a file that
  211. will become a Rayshade 4.0 input file.  Rayshade 4.0 is a high-quality
  212. raytracer (image renderer) available to the public via anonymous FTP
  213. to princeton.edu (in /pub/Graphics/rayshade.4.0).
  214.  
  215. o File->Save RenderMan opens a dialog box in which you can name a file
  216. that will become a RenderMan input ('rib') file.  This file can then
  217. be fed to Pixar's PhotoRealistic RenderMan software to create very
  218. high quality renderings of Polyview scenes.  (For more information on
  219. RenderMan, contact Pixar, 1001 West Cutting Boulevard, Richmond CA,
  220. 94804, (415) 236-4000.)
  221.  
  222. o File->Save RGB opens a dialog box in which you can name a file that
  223. will become an image file in rgb (using SGI "libimage.a") format. You
  224. can later see this picture with tools like "ipaste".
  225.  
  226. Render allows you to specify various attributes for the rendered
  227. scene.  Particularly significant are the following new features.
  228.  
  229. o Render->Draw->Hidden Edges is a new drawmode.  Hidden edges are
  230. ``faked'' by drawing the object with black polygons and then drawing
  231. the edges in color.
  232.  
  233. o Render->Line Width pops up a small dialog box in which you can set
  234. the line width for drawmodes 'edges', 'hidden edges', and 'outlined
  235. faces'.
  236.  
  237. o Render->Outline Color pops up a small dialog box in which you can
  238. set the outline color for drawmode 'outlined faces'.  This is useful
  239. for contrasting the outlines with your current palette and dataset.
  240.  
  241. o Render->Vertex Spheres pops up a small dialog box in which you can
  242. manipulate the 'spheres at vertices' feature.  When using drawmode
  243. 'vertices', if 'sphere size' is not 0.000 then spheres (rather than
  244. points) will be drawn, with the specified radius.  'sphere depth'
  245. controls the quality (number of polygons) of the spheres.  Depth 1
  246. corresponds to cubes.  Caution: high sphere depths take a *long* time
  247. to draw.
  248.  
  249. o Props->Legend puts a strip representing the current colormap in the
  250. upper left corner of the polyview window.
  251.  
  252. As with Polyview 2.0, holding down the left mouse button and moving
  253. the mouse draws a selection rubber-band on the window.  The shift key
  254. plus the left button does the same thing, but a new selection will
  255. have an ``exclusive or'' effect.  (Experiment with this to find out
  256. what that means.)  The middle button causes object rotation.  The
  257. shift key plus the middle button causes object zoom.
  258.  
  259. Caution: the window system will not tell Polyview that the shift key
  260. has been pressed or released if the mouse pointer is outside the GL
  261. (3D) drawing area when the press or release occurs, and Polyview may
  262. correspondingly become confused.  If this happens, just tap the shift
  263. key after moving the mouse pointer inside the GL drawing area to reset
  264. Polyview's internal state.
  265.  
  266. Palette window
  267. ~~~~~~~~~~~~~~
  268.  
  269. The palette window now contains a menubar.
  270.  
  271. o File->Load HDF/Raw: These options pop up a dialog box in which you
  272. can specify a palette file to load.
  273.  
  274. o File->Save HDF/Raw: These options pop up a dialog box in which you
  275. can specify the name of a palette file to save.
  276.  
  277. o Palette: There are some new default palettes.  'All Yellow' may be
  278. useful when using lighting in your scene, as using only a single color
  279. in the scene increases lighted rendering speed substantially.  (Any
  280. palette with the same value in all entries will cause this performance
  281. increase.)
  282.  
  283. o Backdrop: You can select from an assortment of colored and shaded
  284. backdrops for the active polyview window.
  285.  
  286. Info window
  287. ~~~~~~~~~~~
  288.  
  289. The info window now consists of a Motif text widget.  There are
  290. several differences from the original scheme because of this:
  291.  
  292. o Text in the info window can be cut and pasted into other windows on
  293. the screen.
  294.  
  295. o Information for all selected elements (vertices, faces, or objects)
  296. is thrown into the window at once (although a scrollbar is present in
  297. case all the information doesn't fit in the window).
  298.  
  299. o Because all information is thrown into the window at once, there is
  300. a ``reasonableness limit'' (currently set to 300) on the number of
  301. selected elements for which information is displayed.  This is to keep
  302. updating the info window from taking forever.  Since we can't imagine
  303. anyone usefully selecting hundreds of elements at a time in any case,
  304. we don't think this will be a problem.
  305.  
  306. Time window
  307. ~~~~~~~~~~~
  308.  
  309. The time window is essentially unchanged (except for its new Motif
  310. look and feel).
  311.  
  312. New functionality
  313. -----------------
  314.  
  315. RGB Mode and Palette Fiddling
  316. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  317.  
  318. Polyview runs entirely in RGBmode now.  Palette fiddling may be
  319. somewhat slower than before, since the scene is now redrawn each time
  320. the palette is changed.
  321.  
  322. Hardware Lighting
  323. ~~~~~~~~~~~~~~~~~
  324.  
  325. Polyview supports hardware lighting now.  Currently, only one light
  326. is supported.  Six commands can be used to activate/position the
  327. light:
  328.  
  329.         light one
  330.         light two
  331.         light three
  332.         light x
  333.         light y
  334.         light z
  335.  
  336. Control over the lights is also available in the Render menu in a
  337. polyview window.
  338.  
  339. In addition, the lighting can be made to affect both sides of
  340. polygons.  This is generally preferred to ``single-sided'' lighting,
  341. and so it is the default.  The commands 'light twoside on' and 'light
  342. twoside off' can be used to turn twosided lighting on and off.
  343.  
  344. On most SGI platforms there will be a substantial rendering
  345. performance impact while running with lighting on and with a
  346. multicolor palette (as compared to running without lighting).  This
  347. performance drop is intrinsic to the graphics hardware and cannot be
  348. avoided by Polyview.
  349.  
  350. To help decrease this drop in performance, there is a new palette
  351. entry, 'all yellow'.  It can be selected from the palette window menu
  352. as usual or with the command 'palette use allyellow'.  When running
  353. with this palette (which consists of only one color) or a similar
  354. palette, rendering speed with lighting will be considerably faster
  355. than with multicolor palettes.
  356.  
  357. Vertex Spheres
  358. ~~~~~~~~~~~~~~
  359.  
  360. Polyview 3.1 allows you to represent vertices as spheres.  These
  361. spheres can be of variable size and complexity, and can be lighted.
  362.  
  363. To display vertices as spheres, first do 'draw vertices'.  Then do
  364. 'sphere size 0.1', where 0.1 is the desired radius of each sphere in
  365. your world coordinate system.  
  366.  
  367. You can also do 'sphere depth 3' to adjust the complexity (depth of
  368. tesselation, aka number of polygons) of each sphere, where 3 is the
  369. desired depth.  The default sphere depth is 2.  Value 1 collapses the
  370. spheres into cubes, which can be desirable in their own right.
  371. Theoretically depth can range up to 30, but numbers higher than 4 or 5
  372. will cause inordinately slow redrawing rates for most datasets.
  373.  
  374. The spheres will be given the colors the vertices normally have, and
  375. if lighting is enabled they will be shaded appropriately.
  376.  
  377. Line Width and Outline Color
  378. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  379.  
  380. You have full control over the width of lines used in drawmodes
  381. 'edges', 'hidden edges', and 'outlined faces' via the 'draw linewidth'
  382. command.
  383.  
  384. The default linewidth is 1; higher widths (especially 2, 3, or 4) may
  385. be useful in some situations.  Keep in mind that these are pixel
  386. widths, so no matter how small or large the *object* is in the window,
  387. the line width remains constant with respect to itself.
  388.  
  389. Palette Fiddling
  390. ~~~~~~~~~~~~~~~~
  391.  
  392. Palette fiddling works the same as in Polyview 2.0, with two
  393. exceptions.  
  394.  
  395. First, since Polyview 3.1 uses RGB mode at all times, each time the
  396. palette is fiddled all polyview windows must be redrawn in order to
  397. have the altered palette take effect; so, performance takes a
  398. necessary hit.  
  399.  
  400. Second, every palette fiddle produces an instance of the new 'palette
  401. fiddle' command, which is added to the history list on the fly; thus,
  402. palette fiddling can now be part of a script file.
  403.  
  404. Outlined Faces
  405. ~~~~~~~~~~~~~~
  406.  
  407. The rendering code used for drawmodes 'outlined faces' (and now
  408. 'hidden lines' also) has been substantially revised to give better
  409. visual results for all datasets from all viewing angles and distances.
  410. This should eliminate any problems with lines ``breakin up'' in
  411. 'outlined faces' mode.
  412.  
  413. Backdrops
  414. ~~~~~~~~~
  415.  
  416. A new command, 'backdrop', lets you place colorful smooth-shaded
  417. backdrops behind your image in place of the standard black backdrop.
  418.  
  419. Possible backdrops are:
  420.  
  421.   backdrop solid [black|white|grey|blue|red]
  422.   backdrop shaded [rgby|rgblue|rbblack]
  423.   backdrop [horizon|sky|streak|smear] [blue|red|green|yellow]
  424.  
  425. Props
  426. ~~~~~
  427.  
  428. Grids, shadows, and boxes look a little different (and, we hope,
  429. better) now.  In addition, there is a new prop, 'legend'; this is
  430. simply a palette strip placed in the upper left corner of the window.
  431.  
  432. Time Animation Bouncing
  433. ~~~~~~~~~~~~~~~~~~~~~~~
  434.  
  435. A new command, 'time bounce [on|off]' can be used to enable bouncing
  436. in the animation modes.  With bouncing enabled, an animation sequence
  437. (e.g. 'time forward') will change direction (forward to reverse or
  438. vice versa) when reaching the n'th of n frames (if moving forward) or
  439. the 1st frame (if moving backward).  Try it; you'll know what I mean.
  440.  
  441. Blocking Time Forward/Backward
  442. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  443.  
  444. Two new commands are available for time-based animation.  They are
  445. 'timeblock forward' and 'timeblock reverse'.
  446.  
  447. Normally, 'time forward' and 'time reverse' are used to step through a
  448. number of frames automatically.  However, these commands don't
  449. ``block''; that is, cause Polyview's script interpreter to wait until
  450. they're finished before going on to the next command.
  451.  
  452. 'timeblock forward' and 'timeblock reverse', however, cause Polyview
  453. to animate through the specified number of frames before doing
  454. anything else.  
  455.  
  456. For the timeblock commands, you must supply an argument, framecount;
  457. e.g., 'timeblock forward 12'.
  458.  
  459. Pause Command
  460. ~~~~~~~~~~~~~
  461.  
  462. Another new animation-control command is 'pause', which allows you to
  463. effectively cause Polyview to freeze for a specified amount of time in
  464. the middle of a script.  'pause' requires an argument, which is the
  465. number of time units to pause (20 time units to a second).
  466.  
  467. HDF Image Output
  468. ~~~~~~~~~~~~~~~~
  469.  
  470. Polyview now supports a vastly superior color quantizing algorithm to
  471. convert the 24-bit (or pseudo-24-bit) screen image into an HDF 8-bit
  472. raster image for 'save image'.  The algorithm is by Wu from the book
  473. Graphics Gems II (ed James Arvo, pub Academic Press), and is the most
  474. efficient algorithm for very-high-quality quantization that I know of.
  475. (If you think you know of a better algorithm, please let me know.)
  476.  
  477. Renderman and Rayshade Output
  478. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  479.  
  480. Two new commands, 'save ray' and 'save renderman', allow you to save
  481. the current scene into Rayshade 4.0 and Pixar RenderMan files,
  482. respectively.  
  483.  
  484. Rayshade 4.0 is a high-quality raytracer (image renderer) available
  485. freely to the public via anonymous FTP to princeton.edu (in
  486. /pub/Graphics/rayshade.4.0).
  487.  
  488. RenderMan files can be fed to Pixar's PhotoRealistic RenderMan
  489. software to create very high quality renderings of Polyview scenes.
  490. (The RenderMan output feature in Polyview 3.1 is still experimental
  491. and is not guaranteed to work.  For more information on RenderMan,
  492. contact Pixar, 1001 West Cutting Boulevard, Richmond CA, 94804, (415)
  493. 236-4000.)
  494.  
  495. ------------------------------------------------------------------------------
  496.  
  497. COLLABORATIVE POLYVIEW
  498. ======================
  499.  
  500. Polyview includes support for NCSA's DTM (Data Transfer Mechanism), a
  501. network protocol designed to support transmitting and receiving
  502. scientific data and messages over a wide-area network, such as the
  503. Internet.  
  504.  
  505. Polyview can communicate with other clients that use DTM or with other
  506. instances of Polyview on the network.
  507.  
  508. Introduction to Collaborative Work
  509. ..................................
  510.  
  511. The term 'collaborative session' means a situation wherein two or more
  512. people are hooked together over the network for collaborative work.
  513.  
  514. In general, we assume that a telephone conversation is occurring
  515. simultaneously with a collaborative session, allowing participants in
  516. the session to keep in touch with what each person is doing.  This
  517. removes the need for each collaborative tool (e.g. Polyview) to
  518. provide the baseline personal communication capabilities.
  519.  
  520. Polyview's collaborative support is part of an ongoing effort at
  521. NCSA's Software Development Group to develop collaborative tools for
  522. scientists and researchers who wish to work together on data
  523. exploration and analysis over long distances via a wide-area network.
  524. This effort is ongoing, and suggestions for future capabilities are
  525. more than welcome (mail polyview@ncsa.uiuc.edu).
  526.  
  527. Sending Raster Images To NCSA Collage
  528. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  529.  
  530. Polyview provides support for sending raster images of the current
  531. scene to a DTM client capable of receiving them.  One such client is
  532. NCSA Collage for X Window System platforms (obtainable via anonymous
  533. ftp to ftp.ncsa.uiuc.edu in /Collab/XCollage/Collage1.2Beta).
  534.  
  535. Connection
  536. ..........
  537.  
  538. If you have a Collage client running on an X workstation and it's
  539. ready to receive DTM data, and you have a scene in Polyview (on
  540. another machine) that you wish to send to the Collage session, choose
  541. File->DTM Out from the main Polyview window's menubar and type
  542. 'machinename:8888' (where 'machinename' is the name of the machine
  543. running Collage and '8888' is the port that Collage is listening on),
  544. and press 'Activate'.
  545.  
  546. (If you are connecting to an ongoing collaborative session, you should
  547. connect to the DTM server rather than to an individual Collage client.
  548. Existing members of the collaborative session will be able to tell you
  549. which port to connect to.)
  550.  
  551. Sending Images
  552. ..............
  553.  
  554. Once you have connected and are back in the polyview window containing
  555. your 3D scene, you can press the 'Blast Image' button (below the
  556. menubar) to send the current scene to Collage as a raster image.
  557.  
  558. Pressing the 'Blast Image' button causes Polyview to execute the
  559. 'blast image' command, which is equivalent to the 'save image' command
  560. except that 'blast image' uses DTM.
  561.  
  562. Similarly, 'blast mode continuous' is equivalent to 'save mode
  563. continuous' and can be used to tell Polyview to send a new raster
  564. image over DTM every time the window is redrawn, and 'blast mode
  565. single' or 'blast stop' can be used to turn off the continuous image
  566. blasting.
  567.  
  568. If you operate with 'blast mode continuous', Collage will replace the
  569. Polyview image (rather than opening a new window) each time a new
  570. image is received; thus, Collage can actually display animation
  571. sequences provided by Polyview as fast as the network will allow.
  572.  
  573. Polyview-To-Polyview Collaboration
  574. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  575.  
  576. Polyview provides support for ``What You See Is What I See''
  577. collaboration among multiple users at remote geographical locations.
  578.  
  579. Polyview allows you to distribute both data and program commands among
  580. multiple Polyview instances.  (In this context, 'instance' means a
  581. running instantiation of Polyview.)
  582.  
  583. So, for example, that a Polyview instance running in Michigan can send
  584. its 3D data directly to a Polyview instance running in Texas, over the
  585. Internet.  The researcher in Texas could spin the object with the
  586. mouse and then animate through a sequence of frames, and the Michigan
  587. Polyview would automatically follow suit in exactly the same manner.
  588.  
  589. Hooking Up Two Polyview Instances 
  590. .................................
  591.  
  592. Let's follow the steps two Polyview users, ``Bill'' and ``Ted'', take
  593. to hook up two Polyview instances.
  594.  
  595. Bill and Ted decide to collaborate:
  596.  
  597. (1) Bill and Ted each start up Polyview on their respective
  598.     workstations (bill.cs.tech.edu and ted.cs.tech.edu).
  599.  
  600. Bill tells his machine to listen for a connection from Ted's machine:
  601.  
  602. (2) Bill chooses 'File->DTM In' from the menubar, types ':8888'
  603.     (without the quotes) into the dialog box, then presses 'Activate'.
  604.     [In general, any number in the range 7000 to 9999 is probably
  605.     going to be safe to use; 8888 is an arbitrary choice.]
  606.     The listener should not give a machine name before the colon : he
  607.     listen on his machine.
  608.  
  609. Ted tells his machine to talk to Bill's machine:
  610.  
  611. (3) Ted chooses 'File->DTM Out' from his Polyview menubar, types
  612.     'bill.cs.tech.edu:8888' (without the quotes) into the dialog box,
  613.     then presses 'Activate'.
  614.  
  615. Bill and Ted are now connected.
  616.  
  617. Using Polyview Collaboratively
  618. ..............................
  619.  
  620. When two Polyview instances are connected (as described above),
  621. anything that happens in one instance is echoed in the other instance,
  622. and vice versa.  Since 3.1, you don't need to explictly send the data :
  623. when a user load datas from a file, it is distributed to the other
  624. instance. However, if a user has already loaded datas before beeing
  625. connected, he can send them choosing File->Send Vset from his polyview's
  626. window menubar.
  627.  
  628. Let's watch Bill and Ted again.
  629.  
  630. Bill opens a polyview window:
  631.  
  632. (1) Bill chooses Windows->Open Polyview from his main window's
  633.     menubar.
  634.  
  635. A polyview window opens in both Bill and Ted's Polyview instances.
  636.  
  637. Bill loads a dataset:
  638.  
  639. (2) Bill chooses File->Load Vset from his polyview window's menubar.
  640.     He chooses 'coil.hdf' and presses 'OK'.  Bill sees the coil, and
  641.     some seconds after, Ted sees the coil.
  642.  
  643.  
  644. Ted rotates the coil:
  645.  
  646. (3) Ted yells, ``Hey Bill, I'm gonna rotate it.''  By holding down the
  647.     middle mouse button and moving the mouse, Ted rotates the coil to
  648.     a new position.  When he releases the mouse button, the new
  649.     position is sent automatically to Bill's Polyview instance, which
  650.     rotates the coil to match.
  651.  
  652. Bill changes the drawing mode:
  653.  
  654. (4) Bill yells, ``Hey Ted, I'm gonna change the drawing mode.''  Bill
  655.     chooses Render->Draw->Outlined Faces from the polyview window's
  656.     menubar.  The drawing mode changes for both Bill and Ted.
  657.  
  658. Bill and Ted can go on to do things like animate through time
  659. sequences via the time window, fiddle with the palette in the palette
  660. window, add props or lighting to the scene, etc.
  661.  
  662. Notes On Using Polyview Collaboratively
  663. .......................................
  664.  
  665. o Generally, it will prove to be confusing if both people do things in
  666. Polyview at the same time.  You'll benefit by switching ``control''
  667. back and forth as the collaborative session progresses.
  668.  
  669. o Polyview's pick/select feature will work collaboratively, but it
  670. currently requires that both instance's polyview windows be the same
  671. size in order for results to be the same in both instances.  So, if
  672. you're going to collaborate and still expect to use pick/select, don't
  673. resize the window.
  674.  
  675. o Although Polyview supports multiple polyview windows at a time, it
  676. currently only makes sense to have one polyview window open during a
  677. collaborative session.
  678.  
  679. o You can certainly run two Polyview instances on a single workstation
  680. and connect them, e.g. to experiment with Polyview's collaborative
  681. capabilities.  In this case, you can leave the host address out of all
  682. DTM port ID's (e.g. ':1393' rather than 'mymachine.cs.tech.edu:1393').
  683.  
  684. You should know that some combinations of Silicon Graphics hardware
  685. and software (for example, the author's Indigo XS with IRIX 4.0.2) do
  686. not handle multiple GL windows very well.  Thus, you may see exploding
  687. polygons and other undesirable graphics effects.  These will not break
  688. Polyview, but if this happens, just keep in mind that it's not *our*
  689. fault that it's happening.
  690.  
  691. o Polyview 3.1 also accepts DTM SDL (Surface Description Language) 3D
  692. data.  Polyview's Vset/Vdata class is still experimental and has not
  693. yet been released as part of DTM proper.  If you want to use Polyview
  694. to view 3D data being generated by a simulation (e.g. from a Cray or
  695. an RS/6000), we currently recommend you use SDL.  See the DTM
  696. documentation for more details (anonymous ftp to ftp.ncsa.uiuc.edu in
  697. /Collab/DTM).
  698.  
  699. Using 3+ Polyview Instances Collaboratively
  700. ...........................................
  701.  
  702. If you want to link up more than two Polyview instances, you will have
  703. to use a DTM ``server'' (nammed collage_server).
  704.  
  705. A DTM server is a process that manages a collaborative session among
  706. multiple DTM clients; each DTM client connects directly to the server,
  707. and all data sent to the server by one client is distributed to all
  708. the other clients.
  709.  
  710. Doing Polyview-to-Polyview collaboration through a server has not been
  711. tested at NCSA due to resource constraints.  However, there is no
  712. reason that it shouldn't work, and you are encouraged to experiment.
  713. You can obtain NCSA's DTM server via anonymous FTP to
  714. ftp.ncsa.uiuc.edu in directory /Collab/XCollage/Collage1.2Beta.
  715.  
  716. ------------------------------------------------------------------------------
  717.  
  718. KNOWN PROBLEMS
  719. ==============
  720.  
  721. Pick/select on large datasets occasionally causes coredumps within the
  722. GL library.  We have been unable to determine whether this is a
  723. Polyview problem or a problem with the system software.
  724.  
  725. There is no PostScript output facility.  There should be.
  726.  
  727. ------------------------------------------------------------------------------
  728.